home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mac Format 1995 June
/
MacFormat 25.iso
/
Shareware City
/
Developers
/
OutOfPhase1.1 Source
/
OutOfPhase Folder
/
ASTArrayDeclaration.h
< prev
next >
Wrap
Text File
|
1994-05-07
|
2KB
|
51 lines
/* ASTArrayDeclaration.h */
#ifndef Included_ASTArrayDeclaration_h
#define Included_ASTArrayDeclaration_h
/* ASTArrayDeclaration module depends on */
/* MiscInfo.h */
/* Audit */
/* Debug */
/* Definitions */
/* TrashTracker */
/* Memory */
/* SymbolTableEntry */
/* ASTExpression */
/* PcodeObject */
/* CompilerRoot */
#include "PcodeObject.h"
#include "CompilerRoot.h"
struct ASTArrayDeclRec;
typedef struct ASTArrayDeclRec ASTArrayDeclRec;
/* this module allocates all memory through TrashTracker */
/* forwards */
struct TrashTrackRec;
struct SymbolRec;
struct ASTExpressionRec;
struct PcodeRec;
/* create a new array variable constructor node. this should ONLY be used for */
/* creating arrays. variables that are initialized with an array that results from */
/* an expression should use ASTVariableDeclaration. */
ASTArrayDeclRec* NewArrayConstruction(struct SymbolRec* SymbolTableEntry,
struct ASTExpressionRec* SizeExpression,
struct TrashTrackRec* TrashTracker, long LineNumber);
/* type check the array variable constructor node. this returns eCompileNoError if */
/* everything is ok, and the appropriate type in *ResultingDataType. */
CompileErrors TypeCheckArrayConstruction(DataTypes* ResultingDataType,
ASTArrayDeclRec* ArrayConstructor, long* ErrorLineNumber,
struct TrashTrackRec* TrashTracker);
/* generate code for array declaration. returns True if successful, or False if */
/* it fails. */
MyBoolean CodeGenArrayConstruction(struct PcodeRec* FuncCode,
long* StackDepthParam, ASTArrayDeclRec* ArrayConstructor);
#endif